//浏览界面用脚本

/*********
//Funciton明细链接处理
//created by dan 
// 20060909 edit by jfn copy from pagelistform.cs  
window.parent.g_oApp.DetailUrl 窗口全局变量，记录明细指向
window.parent.g_oApp.eDetailUrl 窗口全局变量，记录明细指向，经过Server.UrlEncode
window.parent.g_oApp.DetailCurrentBiz 窗口全局变量，记录当前业务对象
**********/
function LinkWhere(Link,Arg,ddlTitle,CurrentBiz)
{
	
	if (window.name!="listform")
	 {
		alert("只能在浏览窗口链接入明细！");
		return;
	 }
	 
	if(window.parent.g_oApp.DetailUrl!=''&&window.parent.g_oApp.eDetailUrl!='')
	{
		Link=window.parent.g_oApp.DetailUrl;
		ddlTitle=window.parent.g_oApp.eDetailUrl;
	}
	Link='../' + Link ;
	t=Link;
	if(Arg!=null)
	{
		Link =Link +'?'+ Arg;
		if (ddlTitle!=null)
		{
			Link=Link +'&ddlTitle='+ddlTitle;	
		}
	}
	else
	{
		if (ddlTitle!=null)
		{
			Link=Link +'?ddlTitle='+ ddlTitle;	
		}
	}
	if(window.parent.g_oApp.DetailCurrentBiz!='')
	{
		CurrentBiz=window.parent.g_oApp.DetailCurrentBiz;
	}
	if(t!=Link)
	{
		Link=Link+'&CurrentBiz=' +CurrentBiz;
	}
	//window.alert(Link);
	var obj=window.open(Link,window.parent.g_oApp.ListTarget);
}


//根据参数设置打开窗口的特性
function getOpenWindowFeature(width,height)
{
	var nwidth = window.screen.width;
	if(width!=-1)
	{
		nwidth=width;
	}
	var nheight = window.screen.height;
	if(height!=-1)
	{
		nheight = height;
	}
	var nleft = (window.screen.width - nwidth) / 2;
	var ntop = (window.screen.height - nheight) / 2 - 20;
	//var windowfeatures = "top=" + ntop + ",left=" + nleft + ",width=" + nwidth + ",height=" + nheight+",status=no,toolbar=no,menubar=no,location=no,resizable=yes";
	var windowfeatures = "top=" + ntop + ",left=" + nleft + ",width=" + nwidth + ",height=" + nheight+",scrollbars = yes,status=no,toolbar=no,menubar=no,location=no,resizable=yes";
 	//alert(windowfeatures);
	return windowfeatures;
}



    /************
    //function：删除数据 （不能用delete函数名。会出错）
    //parameter:
    //Description:删除前检查，必须有一个以上ID号。
    //            调用打开删除的函数
    */
    function del()  
    {
		var intSelectCount;
			
			intSelectCount=checkSelect(); 
		
		if(intSelectCount < 1)
		{
			alert("请选择要删除的记录！");
		}
		else
		{
			if (intSelectCount>200)
			{
				alert("共选择" + intSelectCount + "条记录!已超出允许删除的最大记录数200！");
			}
			else
			{
				if(confirm("警告：如果删除该记录，那么所有依赖该记录的项目将会无效，是否确定删除" + intSelectCount + "条记录？"))
				__doPostBack("lbtnDelete","");
			}
		} 
    }//del
    
    //刷新
	function refresh()
	{
		__doPostBack("lbtnRefresh","");
	} 
		
	//删除结果反馈
	function resultOfDelete(intdeleteCount)
	{
		if(intCount >0)
		{
			alert("成功删除" + intdeleteCount + "条记录！"); 
		}
		else
		{
			alert("删除失败！请稍后再试");
		}
	}
	//打开指向新增的链接  edit by tanzhiyong 
	function linkAdd(sUrl)
	{
		var intSelectCount;
		intSelectCount=checkSelect();
		if (sUrl.indexOf("?")>0) //参数附加前判断
		{
			sUrl+="&";
		}
		else
		{
			sUrl+="?";
		}
		
		if(intSelectCount== 1)
		{
			strId=SELECTLIST;
			sUrl+="action=addcopy&upId="+escape(strId) ;
		}
		else
		{
			sUrl+="action=add" ;
		}
		
		//指向窗口判断
		//IsDetailQuery 编辑框的标识
		var isPopup=false;
		for (myobj in document.all)
		{
		  if(myobj=="IsDetailQuery")  //在编辑界面中
		  {
			isPopup=true;
		  }
		}//for
		
		if (isPopup==true) //在编辑框中打开时指向
		{
			var oArg = new Object();
			sUrl+="&workform=popoupform";
			var obj=window.open(sUrl,"popoupform",getOpenWindowFeature(750,500));
			obj.focus();		  
			
			//Showdialogue
			//var oReturn=window.showModalDialog (sUrl,oArg,"unadorned:yes;help:no;dialogHide:yes;center:yes;scroll:yes;status:no;dialogWidth=600px;dialogHeight=500px:DialogLeft:"+200+";DialogTop:"+200); 
			//refresh();			
		}
		else  //指向编辑框
		{
			sUrl+="&workform=editform";
			var obj=window.open(sUrl,"editform");
			obj.focus();		  
		
		}//(isPopup==true)
		
		//alert(sUrl);
	    //var obj= window.location(sUrl);

		//新开窗口
		//var obj=window.open(sUrl,"_new",getOpenWindowFeature(560,350));
		//obj.focus();

	}//linkAdd
	
	//打开指向编辑的链接 
	function linkEdit(sUrl,sId)
	{
		
		
		//指向窗口判断
		//IsDetailQuery 编辑框的标识
		var isPopup=false;
		for (myobj in document.all)
		{
		  if(myobj=="IsDetailQuery")  //在编辑界面中
		  {
			isPopup=true;
		  }
		}//for
		
		if (sUrl.indexOf("?")>0) //参数附加前判断
		{
			sUrl+="&";
		}
		else
		{
			sUrl+="?";
		}

		sUrl+="action=update&upId=" +escape(sId);
		
		if (isPopup==true) //在编辑框中打开时指向
		{
			var oArg = new Object();
			sUrl+="&workform=popoupform";
			var obj=window.open(sUrl,"popoupform",getOpenWindowFeature(750,500));
			obj.focus();		  
			
			//Showdialogue
			//var oReturn=window.showModalDialog (sUrl,oArg,"unadorned:yes;help:no;dialogHide:yes;center:yes;scroll:yes;status:no;dialogWidth=600px;dialogHeight=500px:DialogLeft:"+200+";DialogTop:"+200); 
			//refresh();			
		}
		else  //指向编辑框
		{
			sUrl+="&workform=editform";
			var obj=window.open(sUrl,"editform");
			obj.focus();		  
		
		}//(isPopup==true)
		
		/*
		//指向其它窗口
		sUrl+="&workform=editform";
		//alert(sUrl);
	    var obj=window.open(sUrl,"editform");
	    //var obj= window.location(sUrl);

		//弹出新开窗口
		//var obj=window.open(sUrl,"_new",getOpenWindowFeature(560,350));
		//obj.focus();
		*/

	}

	//打开指向浏览的链接 
	function linkBrowse(sUrl,sId)
	{
		if (sUrl.indexOf("?")>0) //参数附加前判断
		{
			sUrl+="&";
		}
		else
		{
			sUrl+="?";
		}

		sUrl+="action=browse&upId=" +escape(sId);
		//指向其它窗口
		sUrl+="&workform=editform";
	    //var obj=window.open(sUrl,"editform");
	   // window.open(college.aspx,"editform");
        var obj=window.open(sUrl,"_new",getOpenWindowFeature(560,350));
	    //var obj= window.location(sUrl);

		//弹出新开窗口
		//var obj=window.open(sUrl,"_new",GetOpenWindowFeature(560,350));
		//obj.focus();
	}
function PrintReport(openstr)
{
	window.open(openstr,"_blank","status=yes,toolbar=no,menubar=no,resizable=yes" );
}
//打印所选择的项报表 目标报表必须包含Ids参数
function PrintSelectedItemsReport(openstr)
{
	var intSelectCount;
			
			intSelectCount=checkSelect(); 
		
		if(intSelectCount < 1)
		{
			alert("请选择要打印的项！");
		}
		else
		{
			if (intSelectCount>200)
			{
				alert("共选择" + intSelectCount + "条记录!已超出最大记录数200！");
			}
			else
			{
				if(openstr.indexOf("?")>0)
				{
					openstr+="&";
				}
				else
					openstr+="?";
				openstr+="Ids="+SELECTLIST;
				PrintReport(openstr);
			}
		}
}
//打印单项报表 目标报表必须有Id参数
function PrintSingeSelectedItemReport(openstr)
{
	var intSelectCount;
			
			intSelectCount=checkSelect(); 
		
		if(intSelectCount != 1)
		{
			alert("请选择要打印的一条记录！");
		}
		else
		{
			if(openstr.indexOf("?")>0)
				{
					openstr+="&";
				}
				else
					openstr+="?";
				openstr+="Id="+SELECTLIST;
				PrintReport(openstr);
			
		}
}

//刷新打开该窗口的页面
function refreshOpener()
{
	try
	{
		top.opener.__doPostBack("btnRefresh","");
	}
	catch(e){}	
}

//提示操作信息
function alertInformation(message)
{
	window.alert(message);
}

//关闭窗口
function closeTopWindow()
{
	top.window.close();
}

function noPurview()
{
	window.alert("没有操作权限");
}


function displayNoPurview(url)
{
	top.window.navigate(url);
}

// 限制TextArea的长度，传入2个参数，表单域元素名，字符限制；
function LimitTextArea(field,maxlimit) 
{
	var textArea=document.all.item(field);
	if (textArea.value.length > maxlimit) 
	{
		//如果元素区字符数大于最大字符数，按照最大字符数截断； 
		textArea.value = textArea.value.substring(0, maxlimit);
	}
}

 //复杂查询状态改变
function resetQuery() {
   if (!document.activeElement.checked)   { //用户取消复杂查询状态
		//将所有复杂查询相关选择框清空
		var objId=frmList.ddlFieldName;
		objId.length=0;
		objId=frmList.ddlOperater;
		objId.length=0;
		objId=frmList.ddlFieldValue;
		objId.length=0;
		objId=frmList.ddlLogic;
		objId.length=0;
   }
   else {  //不允许手工设定复杂查询状态，直接进入复杂查询界面
		//selectQuery();
   }
 }
 
 function prefixVaue(index,value)
 {
	if(index<10)
		return "0"+index+value;
	else if(index>99)
	{
		alert("最多允许99个条件");
		return "";
	}
	else
		return index+value;
 }

 //复杂查询弹出窗口
 //由于页面之间传递对象时出错，所以改用二维数组.与之对应的函数在/js/listform.js 的selectQuery(sBizId)  EditBy jfn 20070516
  function selectQuery(sBizId) 
 { 
     //获取复杂查询弹出窗口
	 var url=QUERYURL+"?queryId=" + sBizId; 
     var oReturn=window.showModalDialog (url,"query","resizable:yes;unadorned:yes;help:no;dialogHide:yes;center:yes;scroll:no;status:no;dialogWidth=360px;dialogHeight=330px"); 
	 //alert(oReturn[0].length);
	 if (oReturn!=null) {
		if (oReturn[0].length>0) {
			var objId=frmList.ddlFieldName;
			objId.length=0;
			for (i=0;i<oReturn[0].length;i++){
				//objId.options.add(new Option(oReturn[0][i].text,prefixVaue(i,oReturn[0][i].value)));
				objId.options.add(new Option(oReturn[0][i][0],prefixVaue(i,oReturn[0][i][1])));
				objId.options[i].selected=true;
			}
			objId=frmList.ddlOperater;
			objId.length=0;
			for (i=0;i<oReturn[1].length;i++){
				//objId.options.add(new Option(oReturn[1][i].text,prefixVaue(i,oReturn[1][i].value)));
				objId.options.add(new Option(oReturn[1][i][0],prefixVaue(i,oReturn[1][i][1])));
				objId.options[i].selected=true;
			}
			objId=frmList.ddlFieldValue;
			objId.length=0;
			for (i=0;i<oReturn[2].length;i++){
				//objId.options.add(new Option(oReturn[2][i].text,prefixVaue(i,oReturn[2][i].value)));
				objId.options.add(new Option(oReturn[2][i][0],prefixVaue(i,oReturn[2][i][1])));
				objId.options[i].selected=true;
			}
			objId=frmList.ddlLogic;
			objId.length=0;
			for (i=0;i<oReturn[3].length;i++){
				//objId.options.add(new Option(oReturn[3][i].text,prefixVaue(i,oReturn[3][i].value)));
				objId.options.add(new Option(oReturn[3][i][0],prefixVaue(i,oReturn[3][i][1])));
				objId.options[i].selected=true;
			}
			//去除用户输入的单一查询值,同时指示复杂查询状态
			//alert(frmList.txtQueryValue.value);
			frmList.txtQueryValue.value="";
			frmList.IsComplexQuery.checked=true;
			
			//上传值并刷新页面
			__doPostBack("ibtnConfirm","");

		}
		
	 //objId.options.add(new Option("",""));
	 }
 } //selectQuery
 
 
/************
//Function:帮助网页
//Parameter:helpId号
//Description:根据HelpId号，调出本页对应的帮助说明页。弹出新窗口，位于右边窗，类似于Office中的帮助大小和位置。
*/
function help(sHelpId)
{
	var obj=window.open("../../Doc/Help/Help.aspx?upHelpId=" + sHelpId,"_help",getOpenWindowFeature(560,350));
	obj.focus();
}


var SELECTCOUNT=0;  //用户选择的记录数
var SELECTLIST="";  //用户选择的记录Id列表

//选择情况检查
function checkSelect()
{
	SELECTCOUNT=0;
	SELECTLIST="";
	var Coll =document.all.tags("INPUT");
	var size=Coll.length ;
	for(i=0;i<size;i++)
	{
		var obj=Coll(i);
		if(obj.type=="checkbox" & obj.name!="")
		{
			if(obj.checked==true &  obj.name.indexOf("selectID")>=0 )
			{
				SELECTCOUNT++;
				if (SELECTCOUNT>1) 
				{
					SELECTLIST+=";";
				}
				SELECTLIST+=obj.value;
			}
		}

	}
	return SELECTCOUNT;     
}  
		

/*************************************
Function: 浏览记录全选或去除选择
************/
function changeCheckValue()
{  
	var Coll =document.all.tags("INPUT");
	var size=Coll.length ;
	for(i=0;i<size;i++)
	{
		var obj=Coll(i);
		if(obj.type=="checkbox" & obj.name!="")
		    
		{
			if(obj.name.indexOf("selectID")>=0 )
			{
				obj.checked=document.activeElement.checked;
			}
		}

	}

}


    /************
    //function：进入增加界面
    //parameter: strUrl--增加界面路径或程序
    //Description:在新窗口中打开增加界面的程序。
    */
    function add(sUrl)
    {
			//openAdd();
			 linkAdd(sUrl);
    }
    /************
    //function：进入编辑界面
    //parameter:
    //Description:进入编辑前检查，只能为一个ID。
    //              调用打开编辑界面的函数
    */
     function edit(sUrl)
     {
		var intSelectCount;
		intSelectCount=checkSelect();
		
		if(intSelectCount!= 1)
			{
			alert("请选择一个信息记录！");
			}
		else
			{
			strId=SELECTLIST;
		  	
			//openEdit(strId);
	        //var sUrl="CollegeEdit.aspx";
	     	linkEdit(sUrl,strId);
			}
     }
    /************
    //function：进入批量修改界面
    //parameter:
     */
     function batchEdit()
     {
		if(frmList.action.indexOf('editState=1')==-1)
		{
			frmList.action=frmList.action + "?editState=1"
		}
		__doPostBack("lbtnBatchEdit","");
     }
     
     function check()
     {
			if(frmList.action.indexOf('editState=1')==-1)
			{
					frmList.action=frmList.action + "?editState=1"
			}
			__doPostBack("lbtnCheck","");
     }

    /************
    //function：进入批量修改界面
    //parameter:
    //Description:进入编辑前检查，只能为一个ID。
    //              调用打开编辑界面的函数
    */
     function batchEditConfirm()
     {
		var intSelectCount;
			
		intSelectCount=checkSelect(); 
			
		if(intSelectCount < 1)
		{
			alert("请选择信息记录！");
		}
		else
		{
			__doPostBack("lbtnBatchEditConfirm","");
		}
     }
     
     function checkConfirm()
     {
		var intSelectCount;
			
		intSelectCount=checkSelect(); 
			
		if(intSelectCount < 1)
		{
			alert("请选择信息记录！");
		}
		else
		{
			__doPostBack("lbtnCheckConfirm","");
		}
     }

  /*个性程序：要求更改函数内的变量*/
  /* 在每个页面中实现
	function openAdd()
    { 
      //新增程序地址
      var sUrl="CollegeEdit.aspx";
      linkAdd(sUrl);
    }
 
	function openEdit(sId)
	{ 
		//编辑程序地址
		var sUrl="CollegeEdit.aspx";
		linkEdit(sUrl,sId);
	}
	function openBrowse(sId)
	{
		//查看程序地址
		var sUrl="College.aspx";
		linkBrowse(sUrl,sId);
	}
	*/
	
///*********用于批处理
    //提供复杂查询的弹出页路径
    var QUERYURL="../../Control/ComplexQuery.aspx";
		
//单选获取	
function selectDataSourceSingleBatch(objText,objValue,sTabName,sColName,sColNameCn,objWhere) 
 { 
	var oArg = new Object();
	 oArg.Tablename=sTabName;
	 oArg.ColName=sColName;
	 oArg.ColNameCn=sColNameCn;
	 oArg.StrWhere= 'FieldName=\''+objWhere.value +'\'';
	 //oArg.StrWhere= objWhere;	//objWhere  是不个对对像，所有不能这样赋值,以上面的为准
 
	 //获取数据源数据
	 var url="../../Control/getdata/GetDataSingle.htm";
     var oReturn=window.showModalDialog (url,oArg,"unadorned:yes;help:no;dialogHide:yes;center:yes;scroll:no;status:no;dialogWidth=400px;dialogHeight=400px:DialogLeft:"+event.screenX+";DialogTop:300"); 
	 if (oReturn!=null) 
	 {
		if (oReturn.length>0) 
		{
			for (i=0;i<oReturn.length;i++)
			{
				objText.value=oReturn[i].text;
				objValue.value=oReturn[i].value;
			}
		}
	 }
 } 

//选择情况
function selectChanged(objSel,objBtn,objText,objValue,objBatchField)
{
	var s= objSel.value;
	objText.value='';
	objValue.value='';
	objBatchField.value='';
	if (s.length>2)
	{
	objBatchField.value=s.substring(0,s.length-2);
		if (s.substring(s.length-2,s.length)=="|C")
			{
				objBtn.disabled=false;
				objText.readOnly=true;
				//window.alert('This is a ddl:' +s);
			}
			else
			{
				objBtn.disabled=true;
				objText.readOnly=false;
				//window.alert('This is a TextBox');
			}
			//window.alert(objBatchField.value);
	}
	
}
function submitBtn(objSel,objText,objValue)
{
	var s= objSel.value;
	if (s.length>2)
	{
		if (s.substring(s.length-2,s.length)!="|C")
			{
				objValue.value=objText.value;
			}
		//window.alert(objValue.value);/
	}
}


///***************************************

//单选获取	: 
function selectDataSourceSingle(objText,objValue,sTabName,sColName,sColNameCn,objWhere) 
 { 
	var oArg = new Object();
	 oArg.Tablename=sTabName;
	 oArg.ColName=sColName;
	 oArg.ColNameCn=sColNameCn;
	 //以下由jfn 050831去除，因为Where语句中不能加 FieldName
	 //oArg.StrWhere= 'FieldName=\''+objWhere.value +'\'';//objWhere  是不个对对像，所有不能这样赋值,以上面的为准
	 oArg.StrWhere= objWhere;	
 
	 //获取数据源数据
	 var url="../../Control/getdata/GetDataSingle.htm";
     var oReturn=window.showModalDialog (url,oArg,"unadorned:yes;help:no;dialogHide:yes;center:yes;scroll:no;status:no;dialogWidth=400px;dialogHeight=400px:DialogLeft:"+event.screenX+";DialogTop:300"); 
	 if (oReturn!=null) 
	 {
		if (oReturn.length>0) 
		{
			for (i=0;i<oReturn.length;i++)
			{
				objText.value=oReturn[i].text;
				objValue.value=oReturn[i].value;
			}
		}
	 }
 } //selectDataSourceSingle
	
	
//change tr color
	function overIt(){
	var the_obj = event.srcElement;
	if(the_obj.tagName.toLowerCase() == "td"){
		the_obj=the_obj.parentElement;
		the_obj.oBgc=the_obj.currentStyle.backgroundColor;			
		the_obj.oFc=the_obj.currentStyle.color;
		the_obj.style.backgroundColor='#dddddd';
	}
}

function outIt(){
	var the_obj = event.srcElement;
	if(the_obj.tagName.toLowerCase() == "td"){
		the_obj=the_obj.parentElement;
		the_obj.style.backgroundColor=the_obj.oBgc;
		the_obj.style.color=the_obj.oFc;
		the_obj.style.textDecoration='';
	}
}
